#!/bin/bash
# Copyright 2015, Alexis La Goutte (See AUTHORS file)
#
# Resync translation between Gerrit repo and Transifex

NO_PUSH="False"
while getopts "n" OPTCHAR ; do
    case $OPTCHAR in
        n) NO_PUSH="True" ;;
        *) printf "Unknown option: %s\\n" "$OPTARG"
    esac
done
shift $((OPTIND - 1))

# All .cpp, .h, and .ui files under ui/qt
LUPDATE_FILES=$(find ui/qt -name '*.cpp' -o -name '*.h' -o -name '*.ui')

# Add line numbers
for i in ui/qt/*.ts ; do
    # shellcheck disable=SC2086
    lupdate -locations absolute ${LUPDATE_FILES} -ts "$i"
done

# Get last translation for Transifex
tx pull -f

# Regenerate last translation for repo
for i in ui/qt/*.ts ; do
    # shellcheck disable=SC2086
    lupdate -locations absolute ${LUPDATE_FILES} -ts "$i"
done

# Push last change tranlastion on Transifex
if [ "$NO_PUSH" != "True" ]; then
    tx push -t -s
fi

# Remove line numbers
for i in ui/qt/*.ts ; do
    # shellcheck disable=SC2086
    lupdate -locations none -no-ui-lines ${LUPDATE_FILES} -ts "$i"
done

#Add new commit with last translation update
#git commit -a -m "TX: Update Translations (sync)"

#Push update translation on Gerrit
#git push origin HEAD:refs/for/master/tx

#
#  Editor modelines
#
#  Local Variables:
#  c-basic-offset: 4
#  tab-width: 8
#  indent-tabs-mode: nil
#  End:
#
#  ex: set shiftwidth=4 tabstop=8 expandtab:
#  :indentSize=4:tabSize=8:noTabs=true:
#
